Main Page   Modules   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

deTimer.hpp

Go to the documentation of this file.
00001 ///////////////////////////////////////////////////////////////////////////////
00002 /// @file deTimer.hpp
00003 ///
00004 /// @brief 
00005 ///
00006 /// @author trajar
00007 ///
00008 /// This file is the intellectual property of Novus Delta, LLC.. Usage of the
00009 /// contents of this file is subject to the Destiny3D Member License which
00010 /// can be found at http://www.destiny3d.com.  Any other usage is prohibited.
00011 ///
00012 /// This file is distributed "AS IS" without warranty of any kind.  Novus
00013 /// Delta, LLC. does not guarantee the fitness of the contents of this file
00014 /// for any particular purpose.
00015 ///
00016 /// Copyright (C) 2001-2003 Novus Delta, LLC. All Rights Reserved.
00017 ///
00018 /// <hr>
00019 ///                                 Change History
00020 /// <hr>
00021 ///
00022 /// @date Jun 2002
00023 /// @author trajar
00024 /// @remarks Creation
00025 ///
00026 ///////////////////////////////////////////////////////////////////////////////
00027 
00028 #ifndef _DETIMER_HPP
00029 #define _DETIMER_HPP
00030 
00031 #ifndef     _DENET_HPP
00032  #include   "deNet.hpp"
00033 #endif
00034 
00035 #ifndef     _DESYNCHOBJECT_HPP
00036  #include   "deSynchObject.hpp"
00037 #endif
00038 
00039 //-------------------------------------------
00040 // class - deTimer
00041 //-------------------------------------------
00042 
00043 class deTimer
00044 {
00045 public:
00046     deTimer();
00047     ~deTimer()  { }
00048 
00049     bool            SupportsHighResCounter( void );
00050     void            StartTimer( void );
00051     void            StopTimer( void );
00052     s64             GetTime( void );
00053 
00054 private:
00055 
00056     //Auxiliary Function
00057     void            UpdateElapsed( void );
00058 
00059     //Member variables
00060     bool            m_bRunning; 
00061     s64             m_i64Start;
00062     s64             m_i64Elapsed;
00063     deSynchObject   m_SynchObject;
00064 
00065     //Some auxiliary variables
00066     s64             m_i64Counts;
00067     LARGE_INTEGER   m_liCount;
00068 
00069     //Static Variables
00070     static bool     sm_bInit;
00071     static bool     sm_bPerformanceCounter;
00072     static s64      sm_i64Freq;
00073 };
00074 
00075 #endif // _PRECISETIMER_H_
00076 
00077 

Generated on Mon Sep 12 19:58:40 2005 for Destiny3D by doxygen1.3-rc3